#include <iostream>
#include <future>

int Add(int n1, int n2)
{
    return n1 + n2;
}

int main()
{
    //创建一个线程，异步地执行Add函数，并用ret保存结果
    std::future<int> ret = std::async(std::launch::async, Add, 10, 20);

    //获取结果，如果此时还没有执行完，则阻塞；否则返回结果
    std::cout << ret.get() << std::endl;
    return 0;
}